import {reactive, ref} from 'vue'
import { defineStore } from 'pinia'
import type {RtcConfig} from "@/api/rtc.ts";

export const useBaseStore = defineStore('base', () => {
  const rtcConfig = reactive<RtcConfig>({
    wsAddr:"ws://14.103.183.219:19000/api/rtc/wsConn",
    onlyLocal:false,
    stunAddr:["stun:stun.l.google.com:19302"],
    turnAddr:[],
    onlyTcpTurn:false,
    openSound:false
  })
  const rtcSession = reactive({
    roomId:"", //房间号
    status:{
      title:"", // 标题
      titleDescription:"", // 标题描述信息
      connDescription:"", // 连接描述信息
      wsStatus:false, // ws 连接状态
      rtcStatus:false, // rtc 连接状态
      sharing:false // 目前是否处于分享状态
    }
  })
  const musicConfig = reactive({
    loopModule:"loop", //循环模式
    currentSongId:"0", // 当前歌曲的id
    isPlaying:false, // 是否正在播放
    showDrawer:false, // 是否显示音乐抽屉
  })
  const showPrivate = ref(false) // 是否显示私有文件
  const privateSecret = ref("") // 私有密码

  return { rtcConfig,rtcSession,musicConfig,showPrivate,privateSecret }
})
